parser grammar ANTLRParser;

options {
  language = Java;
  tokenVocab = ANTLRlexer;
}

@header {
package PL.prac6;
}

@rulecatch {catch (RecognitionException e) {
  throw e;}
 }
 
entrada: instruccion+ EOF;
instruccion: IDENT DOSPUNTOS regla ENDOFFILE? SEPARADOR;
regla:  regla1 OR? regla2*;
regla1: (sentencia (MAS|ASTERISCO)?)* (OR sentencia+)*;
regla2: APARENTESIS regla3+ CPARENTESIS (MAS|ASTERISCO)?;
regla3: (sentencia (OR sentencia)*)|regla2;
sentencia: IDENT | CADENA;